package com.chezai.client.bean;

import org.greenrobot.greendao.annotation.Entity;
import org.greenrobot.greendao.annotation.Generated;
import org.greenrobot.greendao.annotation.Id;
import org.greenrobot.greendao.annotation.Index;
import org.greenrobot.greendao.annotation.Keep;
import org.greenrobot.greendao.annotation.NotNull;
import org.greenrobot.greendao.annotation.Transient;

/**
 * 学时记录
 * Created by likunyang on 2017/8/24.
 */
@Entity
public class PeriodRecord {
    @Transient
    public boolean isEndTrain;
    @Id(autoincrement = true)
    private Long _ID;
    // 学时记录编号
    private String recordNo;
    // 上报类型
    private short uploadType;
    // 学员编号
    private String stuUnifiedNum;
    // 教练编号
    private String coachUnifiedNum;
    // 课堂ID
    private long classId;
    // 产生日期 HHmmss
    private String recordTime;
    // 课程编码A4.2
    private String course;
    // 状态
    private short status;
    // 最大速度
    private int maxSpeed;
    // 里程
    private int mileage;
    // 产生时间 yyMMdd
    private String creatDate;
    //学时记录编号序号
    private String sequenceNumber;
    //数据上传状态 0 失败 1 成功
    @NotNull
    private int uploadState;
    //gnss
    private String gnss;
    //附加包
    private String attachement;
    //教学记录唯一编号
    @Index
    private long classRecordId;
    //重传次数
    private int tryCount;

    @Keep
    public PeriodRecord(boolean isEndTrain) {
        this.isEndTrain = isEndTrain;
    }

    @Generated(hash = 103782961)
    public PeriodRecord(Long _ID, String recordNo, short uploadType,
                        String stuUnifiedNum, String coachUnifiedNum, long classId,
                        String recordTime, String course, short status, int maxSpeed,
                        int mileage, String creatDate, String sequenceNumber, int uploadState,
                        String gnss, String attachement, long classRecordId, int tryCount) {
        this._ID = _ID;
        this.recordNo = recordNo;
        this.uploadType = uploadType;
        this.stuUnifiedNum = stuUnifiedNum;
        this.coachUnifiedNum = coachUnifiedNum;
        this.classId = classId;
        this.recordTime = recordTime;
        this.course = course;
        this.status = status;
        this.maxSpeed = maxSpeed;
        this.mileage = mileage;
        this.creatDate = creatDate;
        this.sequenceNumber = sequenceNumber;
        this.uploadState = uploadState;
        this.gnss = gnss;
        this.attachement = attachement;
        this.classRecordId = classRecordId;
        this.tryCount = tryCount;
    }

    @Generated(hash = 1465677096)
    public PeriodRecord() {
    }

    public Long get_ID() {
        return this._ID;
    }

    public void set_ID(Long _ID) {
        this._ID = _ID;
    }

    public String getRecordNo() {
        return this.recordNo;
    }

    public void setRecordNo(String recordNo) {
        this.recordNo = recordNo;
    }

    public short getUploadType() {
        return this.uploadType;
    }

    public void setUploadType(short uploadType) {
        this.uploadType = uploadType;
    }

    public String getStuUnifiedNum() {
        return this.stuUnifiedNum;
    }

    public void setStuUnifiedNum(String stuUnifiedNum) {
        this.stuUnifiedNum = stuUnifiedNum;
    }

    public String getCoachUnifiedNum() {
        return this.coachUnifiedNum;
    }

    public void setCoachUnifiedNum(String coachUnifiedNum) {
        this.coachUnifiedNum = coachUnifiedNum;
    }

    public long getClassId() {
        return this.classId;
    }

    public void setClassId(long classId) {
        this.classId = classId;
    }

    public String getRecordTime() {
        return this.recordTime;
    }

    public void setRecordTime(String recordTime) {
        this.recordTime = recordTime;
    }

    public String getCourse() {
        return this.course;
    }

    public void setCourse(String course) {
        this.course = course;
    }

    public short getStatus() {
        return this.status;
    }

    public void setStatus(short status) {
        this.status = status;
    }

    public int getMaxSpeed() {
        return this.maxSpeed;
    }

    public void setMaxSpeed(int maxSpeed) {
        this.maxSpeed = maxSpeed;
    }

    public int getMileage() {
        return this.mileage;
    }

    public void setMileage(int mileage) {
        this.mileage = mileage;
    }

    public String getCreatDate() {
        return this.creatDate;
    }

    public void setCreatDate(String creatDate) {
        this.creatDate = creatDate;
    }

    public String getSequenceNumber() {
        return this.sequenceNumber;
    }

    public void setSequenceNumber(String sequenceNumber) {
        this.sequenceNumber = sequenceNumber;
    }

    public int getUploadState() {
        return this.uploadState;
    }

    public void setUploadState(int uploadState) {
        this.uploadState = uploadState;
    }

    public String getGnss() {
        return this.gnss;
    }

    public void setGnss(String gnss) {
        this.gnss = gnss;
    }

    public String getAttachement() {
        return this.attachement;
    }

    public void setAttachement(String attachement) {
        this.attachement = attachement;
    }

    public long getClassRecordId() {
        return this.classRecordId;
    }

    public void setClassRecordId(long classRecordId) {
        this.classRecordId = classRecordId;
    }

    public int getTryCount() {
        return this.tryCount;
    }

    public void setTryCount(int tryCount) {
        this.tryCount = tryCount;
    }


}
